package nowCoder;

import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;

public class HJ20 {
    /*
    描述
        密码要求:
        1.长度超过8位
        2.包括大小写字母.数字.其它符号,以上四种至少三种
        3.不能有长度大于2的包含公共元素的子串重复 （注：其他符号不含空格或换行）

        数据范围：输入的字符串长度满足 1≤n≤100
        输入描述： 一组字符串。

        输出描述： 如果符合要求输出：OK，否则输出NG
     */
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        List<String> l = new ArrayList<>();

        ln:
        while (in.hasNext()) {
            String x = in.next();
            if(x.length() < 8){
                l.add("NG");
                continue;
            }
            int[] a = new int[4];
            char[] b = new char[100];
            for(int i = 0; i<x.length(); i++){
                char y = x.charAt(i);
                if(i < x.length() -2 ){
                    for(int j = 0; j<x.length() -3;j++){
                        if(j == i){
                            b[j] = y;
                            break;
                        }
                        if(y == b[j] && b[j+1] == x.charAt(i+1) && b[j+2] == x.charAt(i+2)){
                            l.add("NG");
                            break ln;
                        }
                    }
                }
                int yy = (int)y;
                if(yy > 47 && yy < 59){
                    a[0] = 1;
                }else
                if(yy > 64 && yy < 91){
                    a[1] = 1;
                }else
                if(yy > 96 && yy < 123){
                    a[2] = 1;
                }else{
                    a[3] = 1;
                }
            }

            if(a[0] + a[1] + a[2] + a[3] < 3){
                l.add("NG");
            }else{
                l.add("OK");
            }
        }
        for(int i = 0; i<l.size();i++){
            System.out.println(l.get(i));
        }
    }
}
